Manejar colecciones de datos en C#:
Para usar listas las creamos usando la palabra reservada List de la siguiente manera:
List<string> lista = new List<string>();
Al crear una lista tenemos que indicar con un generic el tipo de datos que contendrá la lista, en este caso hemos indicado string.
Ejemplo de uso de una lista:
List<string> lista = new List<string>();
lista.Add("Casa");
lista.Add("Coche");
lista.Add("Arbol");
foreach (var item in lista)
{
Console.WriteLine(item);
}
Para usar diccionarios utilizamos la palabra reservada Dictionary de la siguiente manera:
Dictionary<int, string> diccionario = new Dictionary<int, string>();
Ejemplo de uso de un diccionario:
Dictionary<int, string> diccionario = new Dictionary<int, string>();
diccionario.Add(20, "Veinte");
diccionario.Add(34, "Treinta y cuatro");
diccionario.Add(68, "Sesenta y ocho");
foreach( var item in diccionario)
{
Console.WriteLine($"{item.Key} => {item.Value}");
}
Para crear pilas usamos la palabra reservada Stack:
Las pilas nos permiten almacenar elementos utilizando una mecánica LIFO (Last In First Out)
Usamos los siguiente metodos para gestionar una lista:
Stack<string> pila = new Stack<string>();
pila.Push("Hola");
pila.Push("Adios");
Console.WriteLine(pila.Peek());
Console.WriteLine(pila.Pop());
Console.WriteLine(pila.Peek());
Cuando intentamos sacar un elemento de una pila vacia obtenemos la siguiente excepción:
Unhandled exception. System.InvalidOperationException: Stack empty.
Para usar colas usamos la palabra reservada Queue:
Queue<string> cola = new Queue<string>();
Las colas funcionan con una mecánica FIFO (First In First Out)
Ejemplo de uso de colas:
Queue<string> cola = new Queue<string>();
cola.Enqueue("Hola");
cola.Enqueue("Adios");
Console.WriteLine(cola.Dequeue());
Console.WriteLine(cola.Dequeue());
Cuando intentamos "desencolar" un elemento en una cola que está vacía obtenemos la siguiente excepción:
Unhandled exception. System.InvalidOperationException: Queue empty.
C# | Colecciones